<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        <title>3.复习Object.defineProperty其二</title>
    </head>
    <body>
        <script type="text/javascript" >
            let number = 18
            let person = {name:'沫沫',gender:'女'}

            // 使用对象的点语法，把number和person的age属性建立关联（问题是：一次性的）
            // person.age = number

            Object.defineProperty(person,'age',{
                enumerable:true,
                //get函数何时调用？—— 当读取person的age属性时就调用，返回值就是age属性的值
                //get函数中的this是谁？ —— 当前对象
                get(){
                    console.log('get函数执行了')
                    return number
                },
                //set函数何时调用？—— 当修改person的age属性时就调用，收到的参数就是修改后的值
                //set函数中的this是谁？ —— 当前对象
                set(value){
                    console.log('set函数执行了')
                    number = value
                }
            })


        </script>
    </body>
</html>